package com.gopay.common.domain.bank.route.po;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Version;

import com.gopay.common.domain.BaseEntity;

/**
 * 自动路由规则表 zhg.zhang 2016年9月21日 www.gopay.com.cn Inc.All rights reserved.
 */

@Entity
@Table(name = "bis_normal_route_rule")
public class BisNormalRouteRule extends BaseEntity {

	private static final long serialVersionUID = 1L;
	/** 规则ID **/
	private Integer ruleId;
	/** 规则名字 **/
	private String ruleName;
	/** 银行code **/
	private String bankCode;
	/** 银行产品 **/
	private String prodCode;
	/** 是否可用 0关闭，1可用 **/
	private Integer isEnable;
	/** 是否删除 0逻辑删除，1正常 **/
	private Integer isDelete;
	/** 规则类型 00按金额 注：一期只有金额 **/
	private String roleType;

	private Integer version;

	private Date createdTs;

	private Date lastUpdTs;

	private String remark;

	private String remark2;

	@Id
	@SequenceGenerator(name = "bisRouteRuleSeq", sequenceName = "bis_normal_route_rule_seq" ,allocationSize=1)
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "bisRouteRuleSeq")
	@Column(name = "rule_id", unique = true, nullable = false)
	public Integer getRuleId() {
		return ruleId;
	}

	public void setRuleId(Integer ruleId) {
		this.ruleId = ruleId;
	}

	@Column(name = "rule_name")
	public String getRuleName() {
		return ruleName;
	}

	public void setRuleName(String ruleName) {
		this.ruleName = ruleName;
	}

	@Column(name = "bank_code")
	public String getBankCode() {
		return bankCode;
	}

	public void setBankCode(String bankCode) {
		this.bankCode = bankCode;
	}

	@Column(name = "prod_code")
	public String getProdCode() {
		return prodCode;
	}

	public void setProdCode(String prodCode) {
		this.prodCode = prodCode;
	}

	@Column(name = "is_enable")
	public Integer getIsEnable() {
		return isEnable;
	}

	public void setIsEnable(Integer isEnable) {
		this.isEnable = isEnable;
	}

	@Column(name = "is_delete")
	public Integer getIsDelete() {
		return isDelete;
	}

	public void setIsDelete(Integer isDelete) {
		this.isDelete = isDelete;
	}

	@Column(name = "role_type")
	public String getRoleType() {
		return roleType;
	}

	public void setRoleType(String roleType) {
		this.roleType = roleType;
	}

	@Version
	@Column(name = "VERSION")
	public Integer getVersion() {
		return version;
	}

	public void setVersion(Integer version) {
		this.version = version;
	}

	@Column(name = "CREATE_TS", nullable = false)
	@Temporal(TemporalType.TIMESTAMP)
	public Date getCreatedTs() {
		return createdTs;
	}

	public void setCreatedTs(Date createdTs) {
		this.createdTs = createdTs;
	}

	@Column(name = "LAST_UPD_TS", nullable = false)
	@Temporal(TemporalType.TIMESTAMP)
	public Date getLastUpdTs() {
		return lastUpdTs;
	}

	public void setLastUpdTs(Date lastUpdTs) {
		this.lastUpdTs = lastUpdTs;
	}

	@Column(name = "REMARK")
	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	@Column(name = "REMARK2")
	public String getRemark2() {
		return remark2;
	}

	public void setRemark2(String remark2) {
		this.remark2 = remark2;
	}

}
